package com.huanxing.cloud.mall.api.handler;

import com.huanxing.cloud.common.core.entity.Result;
import com.huanxing.cloud.mall.common.dto.UserLoginDTO;
import com.huanxing.cloud.mall.common.entity.UserInfo;

import javax.servlet.http.HttpServletRequest;

public interface LoginHandler {

	void before(UserLoginDTO userLoginDTO);

	/**
	 * 登录
	 *
	 * @author: lijx
	 * @date: 2023/4/22 15:36
	 * @param: [request, userLoginDTO]
	 * @return: com.huanxing.cloud.common.core.entity.Result
	 **/
	Result<UserInfo> login(HttpServletRequest request, UserLoginDTO userLoginDTO);

	/**
	 * 更新用户信息
	 *
	 * @author: lijx
	 * @date: 2023/4/22 15:36
	 * @param: [userInfo]
	 * @return: void
	 **/
	void updateUser(UserInfo userInfo);

	/**
	 * 分销用户绑定
	 *
	 * @author: lijx
	 * @date: 2023/4/22 16:12
	 * @param: [userInfo]
	 * @return: void
	 **/
	void distributionBindUser(UserInfo userInfo);

}
